<?php

	/**
	 * Defines a persistence library using PDO and Databases
	 * It takes a good advantage of some PostgreSQL features
	 * while still keeps compatibility with others databases
	 * supported by PHP
	 *
	 * There is also a very basic data type validation which
	 * MUST be used, otherwise your objects won't work
	 *
	 * @author Pablo Santiago Sánchez <phackwer@gmail.com>
	 * @copyright Copyright (c) 2008, Pablo Santiago Sánchez
	 * @license http://opensource.org/licenses/bsd-license.php BSD License
	 * @package pop
	 */

	/**
	 * Setting to avoid warnings
	 */
	date_default_timezone_set('UTC');

	/**
	 * Constant used by the PDateTime object for default value
	 */
	define("NOW",date("Y-m-d H:i:s"));

	/**
	 * Constant used by the PTime object for default value
	 */
	define("TIME",date("H:i:s"));

	/**
	 * Constant used by the PDate object for default value
	 */
	define("TODAY",date("Y-m-d"));

	/**
	 * base for all data types
	 */
	require("datatypes/PTypeBase.php");

	/**
	 * Data Types avaliable for the POP lib
	 */

	/**
	 * Handle Integer values
	 */
	require("datatypes/PInteger.php");

	/**
	 * Handle Float values
	 */
	require("datatypes/PFloat.php");

	/**
	 * Handle Varchar values
	 */
	require("datatypes/PVarchar.php");

	/**
	 * Handle Text values
	 */
	require("datatypes/PText.php");

	/**
	 * Handle Date values
	 */
	require("datatypes/PDate.php");

	/**
	 * Handle Time values
	 */
	require("datatypes/PTime.php");

	/**
	 * Handle Date/Time values
	 */
	require("datatypes/PDatetime.php");

	/**
	 * Handle Arrays Of Objects
	 */
	require("datatypes/PArrayOf.php");

	/**
	 * Core of the POP lib, includes all attributes shared between objects
	 */
	require("core/POPCore.php");

	/**
	 * Core of the POP lib, main class used for the ORM
	 */
	require("core/Persist.php");

	/**
	 * Core of the POP Database Connection handling
	 */
	require("core/POPDB.php");

	/**
	 * Core of the POP Database Driver Registry
	 */
	require("core/POPDBDriverRegistry.php");

	/**
	 * Core of the POP Environment
	 */
	require("core/POPEnvironment.php");

	/**
	 * Core of the POP Debug Tool
	 */
	require("core/POPDebug.php");

	/**
	 * Core of the POP Query
	 */
	require("core/POPQuery.php");

	/**
	 * Drivers
	 */
	require("drivers/generic.php");
	require("drivers/pgsql.php");
	require("drivers/mysql.php");
	require("drivers/mssql.php");
	require("drivers/oci.php");
	require("drivers/sqlite.php");

?>
